草庐IT

Java Quartz 作业持久化

全部标签

java - 编译 Hadoop 2.2.0 作业?

似乎所有示例都是在考虑旧版本的情况下构建的。如何在Ubuntu上编译我的java程序,使其引用hadoop-2.2.0库?我应该包含的jar文件在哪里?命令是什么?是不是——javac-classpathlibrarieswordcount.java谢谢。 最佳答案 Linux机器最简单的解决方案是:javac-classpath`yarnclasspath`-d.WordCount.java或者:exportCLASSPATH=`yarnclasspath`javac-classpath$CLASSPATH-d.WordCount

java - 是否可以在没有输入文件的情况下在 Hadoop 集群上运行 map/reduce 作业?

当我尝试在Hadoop集群上运行map/reduce作业而不指定任何输入文件时,出现以下异常:java.io.IOException:Noinputpathsspecifiedinjob好吧,我可以想象在没有输入文件的情况下运行作业确实有意义的情况。生成测试文件就会这样。有可能用Hadoop做到这一点吗?如果没有,您是否有生成文件的经验?有没有更好的方法然后将虚拟文件与集群上的一条记录一起用作生成作业的输入文件? 最佳答案 文件路径与基于FileInputFormat的输入相关,如SequenceInputFormat等。但是从hb

java - 如何远程运行 mapreduce 作业

我在尝试远程运行map-reduce作业(字数统计示例)时遇到了一些问题。在谷歌上搜索后,我仍然无法实现我的目标。而且我只看到很少关于远程调用map-reduce作业的主题。以下是问题:首先,我遇到权限问题:SEVERE:PriviledgedActionExceptionas:[user]cause:org.apache.hadoop.security.AccessControlException:org.apache.hadoop.security.AccessControlException:Permissiondenied:user=[user],access=WRITE,in

Hadoop 作业客户端 : Error Reading task output

我正在尝试在我的集群上处理40GB的维基百科英文文章。问题是以下重复错误消息:13/04/2717:11:52INFOmapred.JobClient:TaskId:attempt_201304271659_0003_m_000046_0,Status:FAILEDToomanyfetch-failures13/04/2717:11:52WARNmapred.JobClient:Errorreadingtaskoutputhttp://ubuntu:50060/tasklog?plaintext=true&attemptid=attempt_201304271659_0003_m_00

java - 从 Java 应用程序在 hadoop 2.2 (Yarn) 上启动 mapreduce 作业

我正在尝试从Java应用程序调用mapreduce作业。在以前的hadoop版本(1.x)中,我创建了一个Configuration对象和一个Job对象,在Configuration中设置mapred.job.tracker和fs.default.name并运行工作。现在,在hadoop2.x中,jobtracker不再存在,也不存在任何关于如何以编程方式运行MR1作业的文档。有什么想法吗?我正在寻找的是这里给出的解释:Callingamapreducejobfromasimplejavaprogram 最佳答案 MRClientA

python - 如何在 python 中为 warc 文件编写流式 mapreduce 作业

我正在尝试使用WARClibrary为warc文件编写mapreduce作业python。以下代码对我有用,但我需要此代码来执行hadoopmapreduce作业。importwarcf=warc.open("test.warc.gz")forrecordinf:printrecord['WARC-Target-URI'],record['Content-Length']我希望此代码从warc文件读取流式输入,即zcattest.warc.gz|warc_reader.py请告诉我如何修改此代码以进行流式输入。谢谢 最佳答案 war

hadoop - 识别 map/reduce 作业瓶颈的正确方法是什么?

在正常的java开发中,如果我想提高应用程序的性能,我通常的过程是运行带有附加分析器的程序,或者在应用程序中嵌入一组检测标记。无论哪种情况,近期目标都是确定应用程序的热点,然后能够衡量我所做的更改的效果。当应用程序是在hadoop集群中运行的map/reduce作业时,正确的类比是什么?当作业的运行速度似乎比您在开发沙箱中运行等效逻辑所预测的慢时,有哪些选项可用于收集性能数据? 最佳答案 Map/Reduce框架在Job-Tracker中查看职位。在这里您将看到映射器和缩减器需要多长时间。一个常见的例子是,如果您在reducer中做

amazon-ec2 - 在 Amazon ec2 : multi node cluster 上运行 hadoop 作业

我必须在AmazonEC2集群上运行hadoopmapreduce作业。我尝试使用现有的AMI进行设置。但是在启动master和clients之后,“jps”没有列出任何节点。那么,即使在使用公共(public)hadoopAMI之后,我们还必须为主服务器和从服务器设置hadoop吗?master怎么知道slave的IP地址??谁能告诉我一些好的文档。我现在已经为此苦苦思索了12个多小时。有人可以帮忙吗?谢谢。 最佳答案 Matthew建议的另一种替代方法是使用Whirr。Whirr让在Amazon上部署Hadoop集群变得非常容易

hadoop - 将列名传递给 Hadoop Hive 流作业

我正在Hive中编写一个Hadoop流式处理作业,我希望我的流式处理脚本知道它正在接收的表的列名。我试过设置sethive.cli.print.header=true;但这会将名称打印到控制台,但脚本无法使用它们(据我所知)。理想情况下,我也能够使数据类型可用。HadoopStreamingAPI或Hive中是否有允许我捕获流作业中的列名称的选项?更新:我能够从我的Hive脚本中提取Hadoop环境变量和设置任意变量,并让它们在我的流式脚本中可用。我正在调查访问这些环境变量是否允许我访问数据列名称或以一种骇人听闻的方式传递它们。 最佳答案

hadoop - 无法远程运行 Hadoop 作业

我想从Windows机器远程运行hadoop作业。集群在Ubuntu上运行。基本上,我想做两件事:远程执行hadoop作业。从hadoop输出目录中检索结果。我不知道如何实现这一点。我正在使用hadoop版本1.1.2我尝试在作业配置中传递jobtracker/namenodeURL,但失败了。我尝试了以下示例:Runningjavahadoopjobonlocal/remotecluster结果:始终出现错误,因为无法加载目录。它类似于这篇文章:Exceptionwhilesubmittingamapreducejobfromremotesystem 最佳